The above-mentioned applications disclose a data processing system for decreasing the average time required to access data where that data is stored on disks. A cache memory is provided and data in this memory may be accessed in a much shorter time than if the data were accessed directly from the disks. The cache memory stores segments of data, these segments containing the most recently accessed words or the words most likely to be accessed by a host processor within a short interval. When the host processor wishes to access a word or words on a disk it sends a read or a write command to a storage control unit which first checks to see if the segment or segments containing the desired word or words is/are resident in the cache memory. If the word or words are in segments resident in the cache memory the word or words are returned from the cache memory to the host through the storage control unit if the host has issued a read command. If the host has issued a write command then the word or words are written to in the cache memory. Later, the written-to segments are destaged to the disks to update the disks which provide a more permanent storage for a data file.
In the foregoing system, the cache memory uses MOSFET devices and is subject to loss of the segments of data therein should all power to the cache memory be lost. An uninterruptable power supply, capable of maintaining data in the cache memory for a short interval after loss of the main AC power supply, is provided to preserve the integrity of data in the cache memory during AC power outages of short duration. However, it is impractical to provide a standby power source capable of powering the cache memory for more than a few minutes. Thus, when a power outage lasts for a considerable length of time the data in the cache memory at the time all power is lost is itself lost. This creates a problem in that some of the segments which have been written to while in the cache memory may not have been destaged to the disks hence the system has no valid copy of the data which was in these segments.
The concurrently filed application referred to above discloses and claims a method and apparatus for determining the oldest written-to segment resident in the cache memory at the time of an AC power loss, and sending this information to a host processor in response to a read command from the host processor. However, the RAM storage means which enables this information to be provided is itself powered by the uninterruptable power source and becomes incapable of functioning within a few minutes after loss of the AC power.
In accordance with the present invention means are provided for storing for a period of several days an indication of whether or not the cache memory contained any written-to segments at the time of all power loss whereby, upon restoration of the AC power the host processor may interrogate the indication storage means to determine if the data file, i.e. the data on the disks is completely correct, or whether it is incorrect because written-to segments were resident in the cache memory at the time of complete power loss.